/**
 * Copyright 2009 by Nathaniel Harward.
 * 
 * This file is part of jtyrant-net.
 * 
 * jtyrant-net is free software: you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License as published
 * by the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 * 
 * jtyrant-net is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU Lesser General Public License for more details.
 * 
 * You should have received a copy of the GNU Lesser General Public License
 * along with jtyrant-net.  If not, see <http://www.gnu.org/licenses/>
 */
package us.harward.jtn;

import java.nio.ByteBuffer;

/**
 * Contains the magic codes for each remote function call.
 */
interface Magic {

    final ByteBuffer put = ByteBuffer.wrap(new byte[] { (byte) 0xc8, 0x10 })
	    .asReadOnlyBuffer();
    final ByteBuffer putkeep = ByteBuffer
	    .wrap(new byte[] { (byte) 0xc8, 0x11 }).asReadOnlyBuffer();
    final ByteBuffer putcat = ByteBuffer.wrap(new byte[] { (byte) 0xc8, 0x12 })
	    .asReadOnlyBuffer();
    final ByteBuffer putshl = ByteBuffer.wrap(new byte[] { (byte) 0xc8, 0x13 })
	    .asReadOnlyBuffer();
    final ByteBuffer putnr = ByteBuffer.wrap(new byte[] { (byte) 0xc8, 0x18 })
	    .asReadOnlyBuffer();

    final ByteBuffer out = ByteBuffer.wrap(new byte[] { (byte) 0xc8, 0x20 })
	    .asReadOnlyBuffer();

    final ByteBuffer get = ByteBuffer.wrap(new byte[] { (byte) 0xc8, 0x30 })
	    .asReadOnlyBuffer();
    final ByteBuffer mget = ByteBuffer.wrap(new byte[] { (byte) 0xc8, 0x31 })
	    .asReadOnlyBuffer();

    final ByteBuffer vsiz = ByteBuffer.wrap(new byte[] { (byte) 0xc8, 0x38 })
	    .asReadOnlyBuffer();

    final ByteBuffer iterinit = ByteBuffer.wrap(
	    new byte[] { (byte) 0xc8, 0x50 }).asReadOnlyBuffer();
    final ByteBuffer iternext = ByteBuffer.wrap(
	    new byte[] { (byte) 0xc8, 0x51 }).asReadOnlyBuffer();

    final ByteBuffer fwmkeys = ByteBuffer
	    .wrap(new byte[] { (byte) 0xc8, 0x58 }).asReadOnlyBuffer();

    final ByteBuffer addint = ByteBuffer.wrap(new byte[] { (byte) 0xc8, 0x60 })
	    .asReadOnlyBuffer();
    final ByteBuffer adddouble = ByteBuffer.wrap(
	    new byte[] { (byte) 0xc8, 0x61 }).asReadOnlyBuffer();

    final ByteBuffer ext = ByteBuffer.wrap(new byte[] { (byte) 0xc8, 0x68 })
	    .asReadOnlyBuffer();

    final ByteBuffer sync = ByteBuffer.wrap(new byte[] { (byte) 0xc8, 0x70 })
	    .asReadOnlyBuffer();

    final ByteBuffer vanish = ByteBuffer.wrap(new byte[] { (byte) 0xc8, 0x71 })
	    .asReadOnlyBuffer();

    final ByteBuffer copy = ByteBuffer.wrap(new byte[] { (byte) 0xc8, 0x72 })
	    .asReadOnlyBuffer();

    final ByteBuffer restore = ByteBuffer
	    .wrap(new byte[] { (byte) 0xc8, 0x73 }).asReadOnlyBuffer();

    final ByteBuffer setmst = ByteBuffer.wrap(new byte[] { (byte) 0xc8, 0x78 })
	    .asReadOnlyBuffer();

    final ByteBuffer rnum = ByteBuffer.wrap(new byte[] { (byte) 0xc8,
	    (byte) 0x80 });

    final ByteBuffer size = ByteBuffer.wrap(new byte[] { (byte) 0xc8,
	    (byte) 0x81 });

    final ByteBuffer stat = ByteBuffer.wrap(new byte[] { (byte) 0xc8,
	    (byte) 0x88 });

    final ByteBuffer misc = ByteBuffer.wrap(new byte[] { (byte) 0xc8,
	    (byte) 0x90 });

}
